/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Controleur.TableModel;

import Modele.Technicien;
import Modele.Velo;
import java.util.ArrayList;
import javax.swing.table.AbstractTableModel;

/**
 *
 * @author 20cent
 */
public class TechnicienTableModel extends AbstractTableModel {

    private ArrayList<Technicien> techniciens;
    public static final String[] COLONNES = {"ID",
        "Nom",
        "Prénom"};

    public TechnicienTableModel(ArrayList<Technicien> techniciens) {
        this.techniciens = techniciens;
    }

    public void setTechnicien(ArrayList<Technicien> techniciens) {
        this.techniciens = techniciens;
        fireTableDataChanged();
    }

    @Override
    public int getRowCount() {
        return techniciens.size();
    }

    @Override
    public int getColumnCount() {
        return COLONNES.length;
    }

    @Override
    public String getColumnName(int column) {
        return COLONNES[column];
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        Technicien technicien = techniciens.get(rowIndex);
        switch (columnIndex) {
            case 0:
                return technicien.getMId();
            case 1:
                return technicien.getMNom();
            case 2:
                return technicien.getMPrenom();
            default:
                return null;
        }
    }

    @Override
    public Class<?> getColumnClass(int columnIndex) {
        switch (columnIndex) {
            case 0:
                return int.class;
            case 1:
                return Velo.class;
            default:
                return String.class;
        }
    }

    @Override
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        return false;
    }
}
